1. Technical Field
The present invention relates to the technical field of the graphic rendering. More particularly, the present invention relates to an antialiasing technique.
2. Description of the Related Art
Computer graphics is the technique of generating pictures with a computer. Generation of pictures, or images, is commonly called rendering. Generally, in three-dimensional (3D) computer graphics, geometry that represents surfaces (or volumes) of objects in a scene is translated into pixels and then displayed on a display device.
In computer graphics each object to be rendered is composed of a number of primitives. A primitive is a simple geometric entity such as, e.g., a point, a line, a triangle, a square, a polygon or high-order surface.
As it is known, aliasing affects computer generated images by producing, typically, jagged border objects. The aliasing phenomenon is caused by the limited dimension of a screen pixel. The objects are calculated into continuous space, but they are projected into screen pixel space and the conversion from continuous space into discrete space introduces aliasing problems.
Particularly, a pixel could be partially covered by an object (it typically occurs for border pixels) and since only a single color can be assumed by a pixel, the selection of pixel center color could generate an abrupt change about color gradient.
Antialiasing techniques try to smooth colors to minimize the effect of jagged borders. Two known techniques are super-sampling and multi-sampling, which are easy to implement in hardware form. The distinction between those methods is not well defined and some implementations can be regarded as belonging to both categories.
Super-sampling or FSAA (Full Scene Anti-Aliasing) renders the image at a higher resolution to be subsequently scaled to final dimension. With multisampling, each pixel is sampled at different positions and these samples can be used to reconstruct a final value.
Both methods require more than one sample per pixel of the final image. For example; 4×FSAA performs rendering at four-fold resolution to obtain 4 sub-pixel samples for each output pixel. Samples generated with super-sampling are combined with filtering techniques to mix those contributions with smoother edges. An example of card implementing the FSAA technique is the Matrox Parhelia-512 card.
The Multi-Sampling Anti-Aliasing (MSAA) is alternative to traditional super-sampling used in FSAA. As in super-sampling, multisampling computes the scene at a higher resolution with a small difference by using texture samples for sub-pixel. For example 4× super-sampling generates 4 texels (texture elements) for each sub-pixel, while 4×MSAA generates a single texture for each sub-pixel. An example of cards implementing the MSA technique is the NVIDIA GeForce 3 and 4 cards.